package com.atguigu.gmall.product.service;

import com.atguigu.gmall.model.product.BaseCategoryView;
import com.atguigu.gmall.model.product.SkuAttrValue;
import com.atguigu.gmall.model.product.SkuInfo;
import com.atguigu.gmall.model.product.SpuSaleAttr;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

public interface ProductService {
    //查询一二三级分类
    BaseCategoryView getBaseCategoryView(Long category3Id); //逆向工程SQL语句就帮我们弄好了

    //查询SkuInfo对象
    SkuInfo getSkuInfo(Long skuId);
    //获取sku最新价格
    BigDecimal getPrice(Long skuId);
    //4:查询当前商品spu对应的所有的销售属性及属性值集合 并 skuid进行选中
    List<SpuSaleAttr> getSpuSaleAttrAndChecked(Long spuId, Long skuId);
    //5: 销售属性值ID的组合 对应 skuId 数据
    Map getSaleAttrValuesBySpu(Long spuId);

    //6查询所有分类视图对象集合
    List<BaseCategoryView> getBaseCategoryViewList();
    //查询平台属性及属性值 根据skuId
    List<SkuAttrValue> getBaseAttrInfoAndBaseAttrValue(Long skuId);
}
